1. Field of the Invention
The present invention relates to management of content via a network, and more particularly, to a live content switching method, a source device, and a sink device.
2. Description of the Related Art
Due to the advent and advance of the digital era, an increasing number of digital products, such as DVD players, cable set-top boxes, digital VCRs, digital TVs, and PCs, are being produced. In accordance with the trend of manufacturing digital products to be connectible to a single network, the Digital Home Working Group (DHWG) has established various home network standards for controlling the connection of various digital products to a network.
Today, a home network environment for multimedia is divided into three domains, i.e., a PC Internet world, a mobile world, and a consumer electronics (CE) broadcast world.
FIG. 1 is a diagram illustrating a conventional digital home network environment established based on DHWG guidelines.
A PC Internet world 100 consists of a PC 101 and PC peripherals, i.e., a game console 102, a printer 103, a digital imaging device 104, a digital music device 105, and a wireless monitor 106.
A mobile world 110 consists of mobile devices, i.e., a laptop computer 111, a multimedia mobile phone 112, and a personal digital assistant (PDA) 113. The mobile devices provide users with the freedom of movement into or out of a home network.
A CE broadcast world 120 consists of a TV monitor 121, a consumer electronics device 122, such as a personal video recorder (PVR), a tuner, or a set-top box (STB), and a stereo set 123.
Consumers want digital devices in the three digital worlds to work together in a home network. Therefore, it is necessary to carry out research on a home network that realizes the interoperability of digital devices belonging to different digital words.
A digital home network consists of a CE network, a mobile network, and a PC network and is based on IP networking and universal plug and play (UPnP) technologies. The CE network, the mobile network, and the PC network of the digital home network should cooperate with one another to achieve transparent, simple, and seamless interoperability thereamong.
Media management and control based on UPnP audio/video (A/V) technology enables digital devices and applications to identify, manage, and distribute media content over a home network and to transmit the media content to mobile devices over the home network.
UPnP is an architecture for peer-to-peer network connection of intelligent applications, wireless devices, and PCs and is versatile and easy to use in a small-size network, for example, home or small business, and is designed to provide a connection based on the standard. The UPnP architecture defines general interaction between an UPnP control point and UPnP devices. The UPnP architecture allows UPnP devices to support content and transmission protocols in any form. The UPnP devices include a TV, a VCR, a compact disc (CD)/DVD player, an STB, a stereo system, a Motion Picture Experts Group (MPEG) audio layer 3 (MP3) player, a still camera, a camcorder, a PC, and so on. An AV architecture allows devices to support content of different formats (e.g., MPEG2, MPEG4, Joint Photographic Experts Group (JPEG), MP3, bitmap (BMP), and Window media architecture (WMA)) and transmission protocols of various types (e.g. Institute of Electrical and Electronics Engineers (IEEE)-1394, Hyper Text Transfer Protocol (HTTP) GET, Live Transport Protocol (RTP), HTTP PUT/POST, and Transmission Control Protocol (TCP)/IP).
The majority of UPnP AV scenarios include transmitting content (e.g., movies, music, and pictures) from one device to another device. An AV control point interacts with at least two UPnP devices that act as a source and a sink.
A media server has content a user wants to render. The media server may include or access a plurality of content. The media server accesses the plurality of content and transmits them to another device via a network, using a predetermined transmission protocol. Examples of the media server include, a VCR, a CD/DVD player, a camera, a camcorder, a PC, an STB, a satellite receiver, an audio tape player, and so on.
A media server control point controls and manages the media server according to a user's preference so as to make the media server perform an operation (e.g., data reproduction) desired by the user. Also, the media server control point provides a user interface so that the user can interact with devices to control the devices. Examples of the media server control point include, a TV having a general remote control, and a wireless PDA device. In addition, when required by the user, the media server control point may control the flow of content by invoking various AV transmission actions such as ‘stop’, ‘pause’, ‘fast forward’, ‘rewind’, and ‘skip’.
FIG. 2 is a block diagram of a conventional system for switching live contents over a network. Referring to FIG. 2, the conventional system includes a source device 210 and a sink device 220.
The source device 210 provides content to the sink device 220 via a streaming server in a streaming server+media server unit 212 and provides information on the content to the sink device 220 via a media server in the streaming server+media server unit 212.
A tuner 211 switches from one channel to another channel, via which the source device 210 receives content from a network, and provides the content received from the network to the streaming server+media server unit 212.
The sink device 220 includes a streaming client+media server control point unit 221, which includes a streaming client and a media server control point. The media server control point fetches information on content from the source device 210 and performs its operations in response to commands input by a user. For example, when the media server control point receives a ‘play’ command from the user, it reads content of interest from the source device 210 by using an HTTP protocol. The streaming client receives content from the source device 210 and provides the received content to a reproduction unit 222.
FIG. 3 is a flowchart illustrating a conventional live content switching method. Referring to FIG. 3, in operation 310, a sink device transmits a ‘browse’ or ‘search’ command to a source device in order to obtain information on content from the source device. In operation 320, the source device transmits the information on the content to the sink device. In operation 330, the sink device transmits an HTTP GET command with URL1 specified therein (hereinafter, referred to as an HTTP GET URL1 command) to the source device in order to receive content corresponding to URL1 from the source device. In operation 340, the source device transmits the content corresponding to URL1 to the sink device.
In order to receive content corresponding to URL2 from the source device, the sink device transmits a ‘stop’ command to the source device in operation 350 and transmits an HTTP GET URL2 command to the source device in operation 360. In operation 370, the source device sequentially executes the ‘stop’ command and the HTTP GET URL2 command, which have been transmitted from the source device, such that the content corresponding to URL2 is transmitted to the sink device. Here, the ‘stop’ command may not be an actual command transmitted from the sink device to the source device. In other words, even though the source device does not receive the ‘stop’ command from the sink device, it may automatically stop transmitting the content corresponding to URL1 when it senses that a TCP connection to a network layer is released.
As described above, in the conventional system, it always takes much time to switch from one live content to another live content. For example, in the conventional system, in order to switch from the first live content to the second live content while receiving the first live content, it is necessary to release an existing connection established for the receipt of the first live content, withdraw all hardware/software resources allotted to the existing connection, set a new connection for the receipt of the second live content, and allot resources to the new connection, rather than simply switching from a channel corresponding to the first live content to a channel corresponding to the second live content while maintaining the hardware/software resources allotted to the existing connection. Therefore, the time required for switching from the first live content to the second live content increases undesirably.